Storing large numbers of documents in an efficient and quick-to-retrieve manner is a common problem with databases. A number of different solutions have been provided in the database arena, where data is stored in a single database in a single domain. However, recently web sites such as social networks have attempted to gather and access documents from different domains and combine them to satisfy a particular business case. A number of problems have been encountered in such situations, including having to deal with redundant data stores for relationships, duplication of operation and maintenance effort, and significant scalability issues that need to be addressed frequently.